www.gusucode.com > PHP展示型企业网站模板米拓整站源码 1.0PHP源码程序 > PHP展示型企业网站模板米拓整站源码 1.0/MetInfozs_v1.0/MetInfozs_v1.0/app/system/include/static/vendor/asspinner/jquery-asSpinner.min.js

    /*! jquery asSpinner - v0.2.0 - 2014-09-06
* https://github.com/amazingSurge/jquery-asSpinner
* Copyright (c) 2014 amazingSurge; Licensed GPL */
!function(a){"use strict";var b=a.asSpinner=function(c,d){if(this.element=c,this.$element=a(c),this.options=a.extend({},b.defaults,d,this.$element.data()),this.namespace=this.options.namespace,this.options.rule){var e=this,f=["min","max","step","precision"];a.each(f,function(a,c){e[c]=b.rules[e.options.rule][c]})}else this.min=this.options.min,this.max=this.options.max,this.step=this.options.step,this.precision=this.options.precision;this.disabled=this.options.disabled,this.$element.prop("disabled")&&(this.disabled=!0),this.value=this.options.parse(this.$element.val()),this.mousewheel=this.options.mousewheel,this.mousewheel&&!a.event.special.mousewheel&&(this.mousewheel=!1),this.eventBinded=!1,this.spinTimeout=null,this.isFocused=!1,this.classes={disabled:this.namespace+"_disabled",skin:this.namespace+"_"+this.options.skin,focus:this.namespace+"_focus",control:this.namespace+"-control",down:this.namespace+"-down",up:this.namespace+"-up",wrap:this.namespace},this._trigger("init"),this.init()};b.prototype={constructor:b,init:function(){this.$control=a('<div class="'+this.namespace+'-control"><span class="'+this.classes.up+'"></span><span class="'+this.classes.down+'"></span></div>'),this.$wrap=this.$element.wrap('<div tabindex="0" class="'+this.classes.wrap+'"></div>').parent(),this.$down=this.$control.find("."+this.classes.down),this.$up=this.$control.find("."+this.classes.up),this.options.skin&&this.$wrap.addClass(this.classes.skin),this.$control.appendTo(this.$wrap),this.disabled===!1?this.bindEvent():this.disable(),this._trigger("ready")},_trigger:function(a){var b=Array.prototype.slice.call(arguments,1),c=[this].concat(b.concat);this.$element.trigger("asSpinner::"+a,c),a=a.replace(/\b\w+\b/g,function(a){return a.substring(0,1).toUpperCase()+a.substring(1)});var d="on"+a;"function"==typeof this.options[d]&&this.options[d].apply(this,b)},spin:function(a,b){var c=this,d=function(b){clearTimeout(c.spinTimeout),c.spinTimeout=setTimeout(function(){a.call(c),d(60)},b)};d(b||500)},bindEvent:function(){var b=this;this.eventBinded=!0,this.$wrap.on("focus.asSpinner",function(){b.$wrap.addClass(b.classes.focus)}).on("blur.asSpinner",function(){b.isFocused||b.$wrap.removeClass(b.classes.focus)}),this.$down.on("mousedown.asSpinner",function(){a(document).one("mouseup.asSpinner",function(){clearTimeout(b.spinTimeout)}),b.spin(b.spinDown)}).on("mouseup.asSpinner",function(){clearTimeout(b.spinTimeout),a(document).off("mouseup.asSpinner")}).on("click.asSpinner",function(){b.spinDown.call(b)}),this.$up.on("mousedown.asSpinner",function(){a(document).one("mouseup.asSpinner",function(){clearTimeout(b.spinTimeout)}),b.spin(b.spinUp)}).on("mouseup.asSpinner",function(){clearTimeout(b.spinTimeout),a(document).off("mouseup.asSpinner")}).on("click.asSpinner",function(){b.spinUp.call(b)}),this.$element.on("focus.asSpinner",function(){b.isFocused=!0,b.$wrap.addClass(b.classes.focus),a(this).on("keydown.asSpinner",function(a){var c=a.keyCode||a.which;return 38===c?(b.applyValue(),b.spinUp(),!1):40===c?(b.applyValue(),b.spinDown(),!1):void(57>=c&&c>=48&&setTimeout(function(){},0))}),b.mousewheel===!0&&a(this).mousewheel(function(a,c){return c>0?b.spinUp():b.spinDown(),!1})}).on("blur.asSpinner",function(){b.isFocused=!1,b.$wrap.removeClass(b.classes.focus),a(this).off("keydown.asSpinner"),b.mousewheel===!0&&a(this).unmousewheel(),b.applyValue()})},unbindEvent:function(){this.eventBinded=!1,this.$element.off(".asSpinner"),this.$down.off(".asSpinner"),this.$up.off(".asSpinner"),this.$wrap.off(".asSpinner")},isNumber:function(b){return"number"==typeof b&&a.isNumeric(b)?!0:!1},isOutOfBounds:function(a){return a<this.min?-1:a>this.max?1:0},applyValue:function(){this.options.format(this.value)!==this.$element.val()&&this.set(this.options.parse(this.$element.val()))},_set:function(a){isNaN(a)&&(a=this.min);var b=this.isOutOfBounds(a);0!==b&&(a=this.options.looping===!0?1===b?this.min:this.max:-1===b?this.min:this.max),this.value=a=Number(a).toFixed(this.precision),this.$element.val(this.options.format(this.value))},set:function(a){this._set(a),this._trigger("change",this.value,this.options.name,"asSpinner")},get:function(){return this.value},update:function(a){var b=this;return["min","max","precision","step"].map(function(c){a[c]&&(b[c]=a[c])}),a.value&&this.set(a.value),this},val:function(a){return a?void this.set(this.options.parse(a)):this.get()},spinDown:function(){return a.isNumeric(this.value)||(this.value=0),this.value=parseFloat(this.value)-parseFloat(this.step),this.set(this.value),this},spinUp:function(){return a.isNumeric(this.value)||(this.value=0),this.value=parseFloat(this.value)+parseFloat(this.step),this.set(this.value),this},enable:function(){return this.disabled=!1,this.$wrap.removeClass(this.classes.disabled),this.$element.prop("disabled",!1),this.eventBinded===!1&&this.bindEvent(),this},disable:function(){return this.disabled=!0,this.$element.prop("disabled",!0),this.$wrap.addClass(this.classes.disabled),this.unbindEvent(),this},destroy:function(){return this.unbindEvent(),this.$control.remove(),this.$element.unwrap(),this}},b.rules={defaults:{min:null,max:null,step:1,precision:0},currency:{min:0,max:99999,step:.01,precision:2},quantity:{min:1,max:999,step:1,precision:0},percent:{min:1,max:100,step:1,precision:0},month:{min:1,max:12,step:1,precision:0},day:{min:1,max:31,step:1,precision:0},hour:{min:0,max:23,step:1,precision:0},minute:{min:1,max:59,step:1,precision:0},second:{min:1,max:59,step:1,precision:0}},b.defaults={namespace:"asSpinner",skin:null,disabled:!1,min:-10,max:10,step:1,name:null,precision:0,rule:null,looping:!0,mousewheel:!1,format:function(a){return a},parse:function(a){return parseFloat(a)}},a.fn.asSpinner=function(c){if("string"!=typeof c)return this.each(function(){a.data(this,"asSpinner")||a.data(this,"asSpinner",new b(this,c))});var d=c,e=Array.prototype.slice.call(arguments,1);if(/^\_/.test(d))return!1;if(!(/^(get)$/.test(d)||"val"===d&&0===e.length))return this.each(function(){var b=a.data(this,"asSpinner");b&&"function"==typeof b[d]&&b[d].apply(b,e)});var f=this.first().data("asSpinner");return f&&"function"==typeof f[d]?f[d].apply(f,e):void 0}}(window.jQuery);